// 先引入经过自定义全局封装的 axios
import request from "/@/utils/request";

/**
 * 门店列表
 * @param params 要传的查询参数值
 * @returns 返回接口数据
 * mode null 全部 0直营 1加盟
 */
export function storeNodeList(params: object) {
  return request({
    url: "/store/node/list",
    method: "post",
    data: params,
  });
}

// 订单销售渠道列表
export function channelList(params:{source:any}) {
  let URL =  `/portal/channel/list?source=${params.source}`;
  if(params.source == null){
    URL = `/portal/channel/list`
  }
  return request({
    url: URL,
    method: "GET",
    data: {},
  });
}


/**
 * 销售订单列表
 * @param params 要传的查询参数值
 * type:8(欠款订单)/1(销售订单)/4(服务订单)/3(还款订单)
 * @returns 返回接口数据
 */
export function orderQuery(params:any) {
  let paramsQuery : any = JSON.parse(JSON.stringify(params))
  paramsQuery.current = params.pageNum;
  paramsQuery.size = params.pageSize;
  paramsQuery.type = params.type == 999 ? null : params.type;
  if(paramsQuery.hasOwnProperty('change')){
    paramsQuery.change = paramsQuery.change == 999 ? null : (paramsQuery.change == 1 ? true : false);
  }
  if(paramsQuery.hasOwnProperty('refType')){
    paramsQuery.refType = paramsQuery.refType == 999 ? null : paramsQuery.refType;
  }
  
  return request({
    url: "/portal/order/query",
    method: "post",
    data: paramsQuery,
  });
}

/**
 * 销售订单详情
 * @param params 要传订单id
 * @returns 返回接口数据
 */
export function orderDetails(params: any) {
  return request({
    url: `/order/new/query/${params}`,
    method: "get",
  });
}

export function orderServiceDetails(params: any) {
  return request({
    url: `/order/service/details/?serviceCode=${params}`,
    method: "get",
  });
}


/**
 * 添加备注
 * @param params 要传的参数值
 * @returns 返回接口数据
 * note:
 * snkey:
 */
export function orderAddNote(params: {note:String,snkey:String}) {
  return request({
    url: `/portal/order/add/note`,
    method: "post",
    data: params,
  });
}

/**
 * 销售订单撤销
 * @param params 要传的参数值
 * @returns 返回接口数据
 * id:
 * reason:
 */
export function orderCancel(params: {id:Number,reason:String}) {
  return request({
    url: `order/cancel/${params.id}`,
    method: "get",
    data: {reason:params.reason},
  });
}


/**
 * 销售订单撤销
 * @param params 要传的参数值
 * @returns 返回接口数据
 * id:
 * reason:
 */
export function orderUpdatePrice(params: {orderNo:any,payPrice:Number,payPostage:Number}) {
  return request({
    url: `admin/store/order/update/price`,
    method: "post",
    data: params,
  });
}

// // 退款申请
// export function orderUpdatePrice(params: {orderNo:any,payPrice:Number,payPostage:Number}) {
//   return request({
//     url: `new/refund/order/create`,
//     method: "post",
//     data: params,
//   });
// }


/**
 * 售后订单
 * @param params 要传的参数值
 * @returns 返回接口数据
 * id:
 * reason:
 */
// "current":1,//  分页参数
// "size": 10 //,
// "channel": 0 // 退款渠道  0 原路 1 银行卡 2 余额,
// "status": 0 // 退款申请状态 1 申请中 2 拒绝退款 3 已退款
// "transferStatus": 0 // 银行转账状态  0 转账中 1 已转账  查询退款转账时使用 （*）
export function orderRefundList(params:any ) {
  let paramsQuery : any = JSON.parse(JSON.stringify(params))
  paramsQuery.current = params.pageNum;
  paramsQuery.size = params.pageSize;
  paramsQuery.type = params.type == 999 ? null : params.type;
  return request({
    url: `new/refund/order/list`,
    method: "post",
    data: paramsQuery,
  });
}
